home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 June: Reference Library / Dev.CD Jun 99 RL Disk 1.toast / What's New / Development Kits / Mac_OS_USB_DDK_v1.2 / Examples / USBModem / USBModem Sample Readme < prev    next >
Encoding:
Text File  |  1999-04-15  |  3.1 KB  |  50 lines  |  [TEXT/ttxt]

  1. USBModem Class Driver Sample
  2. Version: 1.0b1
  3.  
  4. A USB Class Driver sample demonstrating the implementation of a USB Class Driver for a Comm Class Device
  5.  
  6. Description
  7.  
  8. The USBModem sample demonstrates the use of the Mac OS USB to create a class driver for a comm class device.  This sample includes the implementation of a compatability shim.  
  9.  
  10. The sample requires the use of the SerialShimLib CFM Library file, which is included. The SerialShimLib must be placed in the Extensions folder.
  11.  
  12. Important Note: The SerialShimLib file is still under development and is provided for test purposes only. In the near future, we will be finalizing this CFM library for general release. The licensing plans for this file have not been completed at this time. When the software is final, we will provide information as to how this file can be licensed.
  13.  
  14. Building the Code
  15.  
  16. This sample was built using the Metrowerks CodeWarrior Pro 2, IDE v2.1 environment and the Mac OS USB DDK v1.0.1.  Also required, is the Universal Interfaces and Libraries 3.1.
  17.  
  18. To rebuild the project, first place the USBModem folder into the USBDDK:Examples: folder. The project file assumes specific access paths that are project specific. The resulting class driver, USBModem, is built into the USBDDK:Extensions-MCWBuilt: folder.
  19.  
  20. You can also build this sample using MPW which has already been configured for the USB DDK. The USBModem sample will appear as another sample in the USBDDK menu.
  21.  
  22. Notes
  23.  
  24. The compatibility shim code must export the SerHAL_Entry procedure, which is picked up by the SerialShimLib. The SerialShimLib will register a unit table driver when the ShimInstall call is made. Note that the ShimInstall call requires the CFragConnectionID parameter.  This is required for the SerialShimLib code to make the FindSymbol call to obtain the SerHAL_Entry proc entry.
  25.  
  26. Other entry points to the SerialShimLib are the 
  27. 1. RemoveShimDrvr and 
  28. 2. ShimIOComplete calls.
  29.  
  30. OSErr     RemoveShimDrvr(Boolean forceFlag) - closes the shim unit table driver. Before this call is made, ensure that the compatibility shim has killed all outstanding parameter block calls.
  31.  
  32. void     ShimIOComplete(ParmBlkPtr pb, OSErr result) - used to complete the parameter block call that was passed to the SerialHAL_Entry call for processing. Set the ParmBlkPtr as the address of the parameter block whose processing is complete.  Pass the result of the call as the result parameter.
  33.  
  34. Bug Reports:
  35.  
  36. If you find any bugs, please send them to "usb@isg.apple.com" and include "Attn: Rich Kubota" and I will try to address them.
  37.  
  38. Questions??:
  39.  
  40. For any questions which you may have with this sample or with Mac OS USB, please submit them to either the Mac OS USB mailing list, usb@apple.com, or to Worldwide Macintosh Developer Technical Support (WWDTS), dts@apple.com. If you are not familiar with the recent changes to the WWDTS support plans, please check them out at the Developer Programs web page, 
  41.  
  42. <http://developer.apple.com/programs/>
  43.  
  44. To subscribe to the Mac OS USB Developer mailing list, send an email to usb@isg.apple.com with the email subject set to "subscribe".
  45.  
  46. Rich Kubota
  47. Apple Macintosh Developer Technical Support
  48. rkubota@apple.com
  49. 9/20/98
  50.